<?php

namespace app\admin\controller;

use think\Controller;
use think\Request;
use think\Session;

//公共的控制器类
class Base extends Controller
{
    //初始化方法
    public function _initialize()
    { 
        session_start();
        
        // //判断session是否存在
        if(empty(Session::has('admin','think'))){
            //跳转到 后台登陆页
            return $this->redirect('admin/index/index');
        }
        //权限过滤
        $mname = request()->controller(); //获取控制器名
        $aname = request()->action(); //获取方法名



        $powerlist = Session::get('admin') ; //获取权限列表
        // var_dump($powerlist[$mname]);die();
        $list = array();

        foreach ($powerlist as $key => $value) {
            $list[] = $value[0];
            
        }
        // var_dump($list);die;
        // var_dump($list[0]['name']);//$list[0]用户的个人信息
       
        //让超级管理员admin拥有所有权限
        if($list[0]['name'] != 'admin'){
            //验证操作权限
            if(empty($powerlist[$mname]) || !in_array($aname,$list))
            {
                $this->error("抱歉！没有操作权限！");
                exit;
            }

        }

    }
    
}
